- // MIR for `f` before GVN
+ // MIR for `f` after GVN
  
  fn f() -> u32 {
      let mut _0: u32;
      let _1: u32;
      let mut _2: E;
      let mut _3: &U;
      let _4: U;
      scope 1 {
          debug i => _1;
      }
      scope 2 {
          let mut _5: &U;
      }
  
      bb0: {
          StorageLive(_2);
          StorageLive(_3);
          _5 = const _;
          _3 = &(*_5);
          _2 = ((*_3).1: E);
          StorageLive(_1);
-         _1 = ((_2 as A).1: u32);
+         _1 = const 0_u32;
          StorageDead(_3);
          StorageDead(_2);
-         _0 = _1;
+         _0 = const 0_u32;
          StorageDead(_1);
          return;
      }
  }
  
